import 'package:json_annotation/json_annotation.dart';
part 'user_info.g.dart'; // 自动生成的代码文件的名字

// 用于自动生成 JSON 序列化和反序列化的代码
// 会自动生成（_$ + 类名 + FromJson / ToJson）两个方法
// 运行 flutter pub run build_runner build自动生成代码文件
@JsonSerializable()
// 用户信息类
class UserInfo { 
  final String? avatar;// 头像
  final String? gender;// 性别
  final String? nickname;// 昵称
  final String? phone;// 手机号
  final int? id;// 
  
  UserInfo({this.avatar,this.gender,this.nickname,this.phone,this.id});

  // // 定义工厂构造函数自动接收数据并初始化数据
  // factory UserInfo.fromJson(Map<String, dynamic> json) {
  //   return UserInfo(
  //     avatar: json['avatar'],
  //     gender: json['gender'],
  //     nickname: json['nickname'],
  //     phone: json['phone'],
  //     id: json['id'],
  //   );
  // }
  // 定义json转对象
  factory UserInfo.fromJson(Map<String, dynamic> json)=>_$UserInfoFromJson(json);
  // 定义对象转json的方法
  Map<String, dynamic> toJson()=>_$UserInfoToJson(this);

}
